package de.solution.paket;

import static org.junit.Assert.*;

import org.eclipse.draw2d.ColorConstants;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Canvas;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Shell;
import org.junit.Before;
import org.junit.Test;
import de.solution.gabelstapler.Gabelstapler;
import de.solution.karte.Karte;
import de.solution.raum.Raum;

/**
 * Die Klasse testet, ob das Paket das richtige Volumen, Gewicht und Id zugeordnet bekommt.
 * 
 * @author The Solution
 */
public class PaketTest {
	
	private Paket testObj;
	
	
	@Before public void setup() {
		Shell shell = new Shell();
		Composite roomComposite = new Composite(shell, SWT.BORDER);
		Canvas c = new Canvas(roomComposite, SWT.FILL);
		
		c.setBackground(ColorConstants.white);
		c.setBounds(0,0,600,500);
		Karte map = new Karte(c);
		Raum entrance = new Raum(map,"Anlieferung", 20, 20, 140, 100,100);
		
		//Stapler
		Gabelstapler stapler = new Gabelstapler(map,entrance,001,200,"Truck");;
		
		
		testObj = new Paket( stapler, 0, 0,001, "Testtyp", entrance );
		
	}
	
	/**
	 * Testet das Gewicht des Paketes.
	 */
	@Test public void TestsetGewicht() {
		// einfacher assert equal test
		testObj.setGewicht(100);
		assertEquals("getGewicht():",testObj.getGewicht(),100);
		System.out.println("Das neue Gewicht des Testpaketes ist: " + testObj.getGewicht());
	}
	
	/**
	 * Testet das Volumen des Paketes.
	 */
	@Test public void TestsetVolumen() {
		// einfacher assert equal test
		testObj.setVolumen(50);
		assertEquals("getVolumen():",testObj.getVolumen(),50);
		System.out.println("Das neue Volumen des Testpaketes ist: " + testObj.getVolumen());
	}

	
	/**
	 * Testet die ID des Paketes.
	 */
	@Test public void TestsetId() {
		testObj.setId(1);
		assertEquals("getId():",testObj.getId(),1);
		//Ausgabe
		System.out.println("Die neue ID des Paketes ist: " + testObj.getId());
		
		
	}
	
	
	
	
		
}
	
	

